In testing network communications devices, it is desirable to have a consistent clock source among network interfaces so that packet transmit and receipt times can be recorded consistently. For example, one type of test involves a test device sending the packets to a device under test and recording the packet transmission times. The device under test receives the packets, processes the packets, and returns the packets to the test device. The test device receives the packets and records the time of receipt of the packets. If the packet transmit times are generated consistently with the recorded times of receipt, then accurate packet timing statistics can be generated. However, if the packet transmit times are not generated consistently with the recording of the times of receipt, packet timing statistics will be inaccurate.
FIG. 1 illustrates an exemplary test device 100 and a device under test 102. In the illustrated example, a first network interface card (NIC) 104 of test device 100 transmits a packet 106 to device under test 102. Network interface card 104 records the time of transmission of packet 106 as T1. Device under test 102 processes and returns the packet 106. Packet 106 is received by network interface 108 of test device 100. Network interface 108 records the time T2 as the time of receipt of packet 106.
In order for test device 100 to make accurate measurements of jitter, latency, throughput, or other timing-related parameters, the time recorded by network interface 108 must be consistent with the time recorded by network interface card 104. In some applications, timing consistency on the order of microseconds or even nanoseconds may be required. Although a variety of solutions exist for synchronizing timing among different devices in a network, such solutions are typically not implemented between network interface cards because network interface cards include standard hardware and software and it is desirable to keep the costs of network interface cards low.
Accordingly, there exists a long felt need for methods, systems, and computer readable media for synchronizing timing among network interface cards in a network equipment test device.